//学生管理系统主菜单

import Students.Mains;
import Students.Student;

import java.util.Scanner;

public class Students_System {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        Mains m = new Mains();

        while (true) {
            //注意：这里的学生对象只能在循环里面生成，每次循环时都生成一个新的对象；
            // 这样每次录入时就不会只操作这一个对象，从而实现ID不同时进行添加。
            //在循环外面时，每次进行录入时都是对这同一个学生对象进行修改；
            //在循环外面时，只有相邻的时候，ID不同才无法添加；不相邻时，无论ID是否相同，都会进行添加。
            Student st = new Student();
            System.out.println("------------欢迎来到学生管理系统------------");
            System.out.println("1.添加学生信息");
            System.out.println("2.删除学生信息");
            System.out.println("3.修改学生信息");
            System.out.println("4.查询学生信息");
            System.out.println("5.显示所有学生信息");
            System.out.println("6.退出程序");
            System.out.print("请进行你的选择:");
            String s = sc.next();
            switch (s) {
                case "1": {
                    //录入
                    Scanner scan = new Scanner(System.in);
                    System.out.print("请输入学生的ID：");
                    String id = scan.next();
                    if (m.Jug(id)) {
                        System.out.println("该ID已经存在，无法添加！");
                    } else {
                        System.out.print("请输入学生姓名：");
                        String name = scan.next();
                        System.out.print("请输入学生年龄：");
                        int age = scan.nextInt();
                        System.out.print("请输入学生地址：");
                        String address = scan.next();
                        st.setId(id);
                        st.setName(name);
                        st.setAge(age);
                        st.setAddress(address);
                        if (m.Add(st))
                            System.out.println("添加成功！");  // 添加
                    }
                    break;
                }

                case "2": {
                    System.out.println("请输入要删除学生的ID：");
                    String id = sc.next();
                    m.Delete(id);  //删除
                    break;
                }
                case "3": {
                    System.out.println("请输入你要修改学生ID：");
                    String ids = sc.next();
                    if (m.Update(ids))  // 修改
                        System.out.println("修改成功！");
                    else
                        System.out.println("修改失败！");
                    break;
                }
                case "4": {
                    //查询学生信息
                    System.out.println("请输入你要查询学生的ID：");
                    String sr = sc.next();
                    m.Select(sr);  // 查询
                    break;
                }
                case "5": {
                    m.Output();  // 显示所有学生信息
                    break;
                }
                case "6":
                    //退出程序
                    System.exit(-1);
                default:
                    System.out.println("输入错误，请重新选择！");

            }
        }
    }
}
